//
//  Map.h
//  trail-map-editor
//
//  Created by Tino Giorgio on 12/3/13.
//
//

#ifndef __trail_map_editor__Map__
#define __trail_map_editor__Map__

#include <plib/ul.h>
#include <plib/sg.h>
#include <plib/ssg.h>
#include <plib/ssgAux.h>

#include "tinyxml2/tinyxml2.h"

class Map : ssgTransform
{
public:
	static Map* loadFromXML(const char* filename);
	
	virtual ~Map();
	
	const char* getName() const { return mName; } ;
	ulList* getSectors() const { return mSectors; } ;
	
private:
	Map(const char* name);
	
	static void _parseSectors(const tinyxml2::XMLElement* element, Map* map);
	
	char* mName;
	ulList* mSectors;
};

#endif /* defined(__trail_map_editor__Map__) */
